import java.util.ArrayList;
import java.util.List;

public class Triangle {
    public static void main(String[] args) {
        Triangle triangle = new Triangle();
        List<List<Integer>> arr = triangle.generate(3);
        System.out.println(arr);
    }
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> ret = new ArrayList<>();
        List<Integer> row = new ArrayList<>();
        row.add(1);
        ret.add(row);
        for (int i = 1; i < numRows; i++) {
            List<Integer> prevrow = ret.get(i - 1);
            List<Integer> newrow = new ArrayList<>();
            newrow.add(1);
            for (int j = 1; j < i; j++) {
                int value = prevrow.get(j)+prevrow.get(j-1);
                newrow.add(value);
            }
            newrow.add(1);
            ret.add(newrow);
        }
        return ret;
    }
}
